"""
https://tieba.baidu.com/f?kw=%E6%B5%99%E6%B1%9F%E5%B7%A5%E8%B4%B8&ie=utf-8&pn=0
https://tieba.baidu.com/f?kw=%E6%B5%99%E6%B1%9F%E5%B7%A5%E8%B4%B8&ie=utf-8&pn=50
https://tieba.baidu.com/f?kw=%E6%B5%99%E6%B1%9F%E5%B7%A5%E8%B4%B8&ie=utf-8&pn=100
爬取网页数据：
1.要不要登录才能访问
    需要登录才能访问的话，要考虑用cookie或session来实现
2.Get/post请求
    get请求,需要知道请求url，请求头(User-Agent)
    post请求:url，请求头(User-Agent),请求体数据(Form Data)
"""
import requests


def load_page(url, file_name):
    headers={
        'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.102 Safari/537.36'
    }
    html=requests.get(url,headers=headers)
    print(f'正在保存{file_name}')
    #将爬取的内容html，写入文件
    with open(file_name,'w',encoding='utf-8')as f:
        f.write(html.content.decode())

# 1)让用户输入要爬取的贴吧，还有起始页和结束页
kw = input('请输入要爬取的贴吧名：')
begin = eval(input('请输入起始页：'))
end = eval(input('请输入结束页：'))
# 2）根据用户输入，拼接url的kw
url = 'https://tieba.baidu.com/f?kw=' + kw
# print(url)
# 3）根据输入的起始页和结束页，循环去拼接完整的url,爬取每一页数据，保存在文件中
# range()不包括结束


for page in range(begin, end + 1):
    pn = (page - 1) * 50
    # 拼接出完整的url
    url_new = url + "&pn=" + str(pn)
    print(url_new)
    # 拼接文件名
    file_name = '第' + str(page) + '页.html'
    # 假设有这么一个函数，给他url和文件名，他能帮我爬取url的内容保存在文件中
    load_page(url, file_name)
# 4）爬取每一页数据，并保存在文件中
